Server virtualization technology has been widely accepted in the IT industry and has become an advanced approach with which a data center operates a variety of workloads. Server virtualization technology enables a plurality of different small-scale tasks to be consolidated into one server, thereby saving energy and enabling a resource server to flexibly manage resources. In the context of server virtualization technology, a virtual machine management program is a software program located between server hardware and operating system software that can provide hardware abstraction and resource distribution for an operating system (i.e., virtualize hardware of a server). A server on which a virtual machine program is installed can install a plurality of different operating systems on the server hardware with allowed resources under management of the virtual machine management program in accordance with user requirements. In such case, the different operating systems operate independently of one another.
Server virtualization technology involves substantial market competition, and virtual machine management program providers constantly add new features to virtual machine management program code. As a result, inevitable program deficiencies arise, and consequently the virtual machine management program is at risk of becoming unstable. Thus, it is necessary to continuously mend the program to address any program deficiencies.
A novel strategy for virtual machine management program providers is to provide a built-in virtual machine management program such that customers can easily install a virtual machine. When a built-in virtual machine management program is used, installing a hardware driver is not necessary, and the virtual machine management program is generally built-in to a memory chip, similarly to firmware and BIOS. The functions of the built-in virtual machine management program are similar to those of a common virtual machine management program, but some management functions from a code package of the virtual machine management program are left out in order to reduce the code package size. Built-in virtual machine management programs for business applications include VMware ESXi, Red Hat oVirt, Citrix XenExpress OEM Edition, etc. VMware ESX is a virtual machine management program having a service management platform and a CIM agent that is stored on a DVD and is a complete installable program. By contrast, VMware ESXi is a built-in virtual machine management program that requires only 30 MB of space and that does not have all built-in management functions.
Hardware providers in support of built-in virtual machine management programs assume high costs, as they need to redesign system mainboards to provide flash memory chips. Specifically, it is necessary to add system firmware options activated from a virtual machine management program in a flash memory chip. Furthermore, it is necessary to add software functions to manage the content in the flash memory chip, e.g., functions for managing the chip content when the virtual machine management program in the flash memory chip is updated. Due to the increased costs, hardware providers currently can only support built-in virtual machine management for some products on a product line.
There are conventional schemes in which it may be unnecessary to add a built-in virtual machine management program in a flash memory chip of a mainboard. For instance, in accordance with some conventional schemes, the built-in virtual machine management program is placed in a local hard disk, USB, CDROM, or in a remote end server. However, placement of the built-in virtual machine management program in the local hard disk of the server is inconvenient in terms of updating, mending, or performing other maintenance functions with respect to the built-in virtual machine management program. Moreover, placement of the built-in virtual machine management program in the USB or CDROM is inconvenient for remote management, and for a high-density blade server, access to the USB and CDROM may be very limited. In addition, when the built-in virtual machine management program is placed in the remote end server, support for remote activation protocols such as Preboot Execution Environment (PXE) is required; more specifically, in this scheme, the data center is required to have been installed with a highly available PXE infrastructure with complete functions, and a network connection is required between the data center and the PXE infrastructure. Not all data centers can satisfy such conditions. Furthermore, since PXE carries out data transmission by using an external network connection, issues with respect to security and stability may occur upon activation. In sum, all of the conventional schemes present various issues.